Semi-Automated Verification of Erlang Code
نویسندگان
چکیده
Erlang is a functional programming language with support for concurrency and message passing communication that is widely used at Ericsson for developing telecommunication applications. We consider the challenge of verifying temporal properties of Erlang programs which are used to implement systems with dynamically evolving process structures and unbounded data. This is a hard task, which requires a rich verification framework. Building upon such a framework for goal-directed, proof system–based verification, the paper investigates the problem of semi–automating this task by identifying the proof parameters crucial for successful proof search.
منابع مشابه
Verifying Generic Erlang Client-Server Implementations
The Erlang Verification Tool is an interactive theorem prover tailored to verify properties of distributed systems implemented in Erlang. It is being developed by the Swedish Institute of Computer Science in collaboration with Ericsson. In this paper we present an extension of this tool which allows to reason about the Erlang code on an architectural level. We demonstrate our approach by develo...
متن کاملVerification of Distributed Erlang Programs using Testing, Model Checking and Theorem Proving
Software infiltrates every aspect of modern society. Production, transportation, entertainment, and almost every other sphere that influences modern living are either directly or indirectly dependent on software systems. Software systems provide such a degree of flexibility that their role as a driving force for new and better products is indisputable. The downside is that software systems are ...
متن کاملTowards a Specification-Based Correctness of Erlang Systems Through Asynchronous Monitoring
We argue that runtime verification, in the guise of monitororiented programming, is a natural way how to ensure correctness in dynamically-typed, concurrent languages such as Erlang. Our proposal involves a methodology for marrying correctness runtime checking with the fail-fast approach in Erlang, exploiting the rich failure-handling mechanisms of the language. This allows us to smoothly integ...
متن کاملDSCMC: Distributed Stateless Code Model Checker
Stateless code model checking is an effective verification technique, which is more applicable than stateful model checking to the software world. Existing stateless model checkers support the verification of neither LTL formulae nor the information flow security properties. This paper proposes a distributed stateless code model checker (DSCMC) designed based on the Actor model, and has the cap...
متن کاملTranslating Erlang to µCRL
The language Erlang has been developed by Ericsson to implement large switching systems. Erlang is nowadays used by several companies for complex embedded systems. The language CRL is a process algebra with data. Several verification tools are available for CRL and other process algebras, including a tool to create labelled transition systems from CRL specifications. By having a translation fro...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001